//using Microsoft.VisualBasic;
using System;

//
// *  NHibernate 代码模版
// 

using System.Collections.Generic;

namespace NCS
{
	/// <summary>
	///	
	/// </summary>
	[Serializable()]
    public class curveData : ICloneable
	{

		#region "构造方法"
		public curveData()
		{
			m_methodid = 0;
			m_standardid = 0;
			m_eleArea = 0;
			m_eleInt = 0;
			m_ele = null;
			m_weight = 0;
			m_id = 0;
			m_calcconc = 0;
			m_sampleid = 0;
			m_quan = 0;

			m_wlweight = 0;
		}
        public curveData(curveData cd2)
        {
            //m_methodid = cd2.methodid ;
            m_standardid = cd2.standardid ;
            m_eleArea = cd2.eleArea ;
            m_eleInt = cd2.eleInt ;
            m_ele = cd2.ele ;
            m_weight = cd2.weight ;
            //m_id = cd2.id ;
            m_calcconc = cd2.calcconc ;
            m_sampleid = cd2.sampleid ;
            m_quan = cd2.quan ;
            m_wlweight = cd2.wlweight ;
        }
		#endregion
        public virtual object Clone()
        {
            return new curveData(this);
        }

		#region "私有变量"
		private int m_methodid;

		private int m_curvexishuid;
		private int m_standardid;
		private double m_eleArea;
		private double m_eleInt;
		private string m_ele;
		private double m_weight;
		private int m_id;
		private double m_calcconc;
		private int m_sampleid;
		private double m_quan;
		private double m_wlweight;
		private curveXishu m_curvexishu;
		#endregion


		#region "公有属性"

		///<summary>
		///
		///</summary>
		public virtual curveXishu curveXishu {
			get { return m_curvexishu; }
			set { m_curvexishu = value; }
		}
		public virtual int methodid {
			get { return m_methodid; }
			set { m_methodid = value; }
		}
		public virtual int curvexishuid {
			get { return m_curvexishuid; }
			set { m_curvexishuid = value; }
		}

		///<summary>
		///标样编号
		///</summary>
		public virtual int standardid {
			get { return m_standardid; }
			set { m_standardid = value; }
		}

		///<summary>
        ///面积
		///</summary>
		public virtual double eleArea {
			get { return m_eleArea; }
			set { m_eleArea = value; }
		}

		///<summary>
		///含量
		///</summary>
		public virtual double eleInt {
			get { return m_eleInt; }
			set { m_eleInt = value; }
		}
        ///<summary>
        ///计算含量
        ///</summary>
        public virtual double calcconc
        {
            get { return m_calcconc; }
            set { m_calcconc = value; }
        }
		///<summary>
		///元素
		///</summary>
		public virtual string ele {
			get { return m_ele; }
			set { m_ele = value; }
		}

		///<summary>
		///
		///</summary>
		public virtual double weight {
			get { return m_weight; }
			set { m_weight = value; }
		}

		///<summary>
		///
		///</summary>
		public virtual int id {
			get { return m_id; }
			set { m_id = value; }
		}

	

		///<summary>
		///
		///</summary>
		public virtual int sampleid {
			get { return m_sampleid; }
			set { m_sampleid = value; }
		}

		///<summary>
		///
		///</summary>
		public virtual double quan {
			get { return m_quan; }
			set { m_quan = value; }
		}

		///<summary>
		///
		///</summary>
		public virtual double wlweight {
			get { return m_wlweight; }
			set { m_wlweight = value; }
		}

		#endregion
        
		#region "Rewrite Equals and HashCode"
		/// <summary>
		/// 
		/// </summary>
		public override bool Equals(object obj)
		{
			if (object.ReferenceEquals(this, obj)) {
				return true;
			}
			if ((obj == null) || (!object.ReferenceEquals(obj.GetType(), GetType()))) {
				return false;
			}
			curveData castObj = (curveData)obj;
			return (castObj != null) && (m_id == castObj.id);
		}
		/// <summary>
		/// 用唯一值实现GetHashCode
		/// </summary>
		public override int GetHashCode()
		{
			int hash = 57;
			hash = 27 * hash * m_id.GetHashCode();
			return hash;
		}
		#endregion
	}
}
